tag @s add Charging
tag @s add SelfProtect
execute positioned ~ ~-2 ~ as @e[type=!#dab:not_living,distance=..0.5,tag=!SelfProtect] at @s run damage @s 0.4 arrow by @a[tag=SelfProtect,limit=1]
execute positioned ~ ~-1 ~ as @e[type=!#dab:not_living,distance=..1,tag=!SelfProtect] at @s run damage @s 0.3 arrow by @a[tag=SelfProtect,limit=1]
execute run particle dust{color:[1.0,0.9,0.0],scale:1} ^ ^-0.5 ^ 0 0 0 0 1 force @a[distance=..64]
#execute run particle dust{color:[1.0,0.0,0.0],scale:4} ^ ^-0.5 ^ 0 0 0 0 1 normal @a
execute positioned ~ ~-2 ~ as @e[type=!#dab:not_living,distance=..0.5,tag=!SelfProtect] at @s run return fail
execute positioned ~ ~-1 ~ as @e[type=!#dab:not_living,distance=..1,tag=!SelfProtect] at @s run return fail
tag @s remove SelfProtect
execute unless block ^ ^ ^ air run return fail
execute if entity @s[distance=..128] positioned ^ ^ ^0.5 run function dab:system/bow_arrow/charge_longbow/charge_arrow/shoot